package io.adrainty.bolee.insurance.repository;

import com.baomidou.mybatisplus.core.metadata.IPage;
import io.adrainty.bolee.insurance.models.entity.ConditionEntity;

import java.util.List;

/**
 * <p>IConditionServiceRepository</p>
 *
 * @author AdRainty
 * @version V1.0.0
 * @description ConditionServiceRepository
 * @since 2025/8/11 10:23:26
 */
public interface IConditionRepository {

    /**
     * <p>分页获取保障系数</p>
     *
     * @param pageNum  页码
     * @param pageSize 页大小
     * @param searchDTO 查询条件
     * @return IPage<ConditionEntity>
     */
    IPage<ConditionEntity> findConditionPage(Integer pageNum, Integer pageSize, ConditionEntity searchDTO);

    /**
     * <p>获取保障系数列表</p>
     *
     * @param entity 保障系数
     * @return List<ConditionEntity>
     */
    List<ConditionEntity> findConditionList(ConditionEntity entity);

    /**
     * <p>创建保障系数</p>
     *
     * @param entity 保障系数
     * @return Boolean
     */
    boolean createCondition(ConditionEntity entity);

    /**
     * <p>修改保障系数</p>
     *
     * @param entity 保障系数
     * @return Boolean
     */
    boolean updateCondition(ConditionEntity entity);

    /**
     * <p>删除保障系数</p>
     *
     * @param deleteIdList 删除ID列表
     * @return Boolean
     */
    boolean deleteCondition(List<String> deleteIdList);

}
